package site.marqstree.kotlin.library.base.common

import android.app.Application
import site.marqstree.kotlin.library.base.injection.app.AppComponent
import site.marqstree.kotlin.library.base.injection.app.AppModule
import site.marqstree.kotlin.library.base.injection.app.DaggerAppComponent

/*
 * 项目名: KotlinMall
 * 包名: site.marqstree.kotlin.baselibrary.common
 * 文件名: BaseConstant
 * 创建者: marqstree
 * 创建时间: 2020/2/18 9:21
 * 描述: 基础常量
 */
open class BaseApplication: Application(){

    //app层依赖工厂管理者
    lateinit var appComponent: AppComponent

    override fun onCreate(){
        super.onCreate()
        //生成app层依赖工厂管理者
        initAppInjection()
    }

    //生成app层依赖工厂管理者
    private fun initAppInjection(){
        appComponent = DaggerAppComponent.builder()
            .appModule(
                AppModule(
                    this
                )
            )
            .build()
    }
}